1. Technical Field
The present application relates generally to an improved data processing system and method. More specifically, the present application is directed to a system and method for generating backup sets to a specific point in time.
2. Description of Related Art
The Internet provides an infrastructure for the widespread public availability of large volumes of information. With the increased availability of information, it is increasingly important for users to have some means for storing and conveniently managing their data. In this respect, the development of electronic data storage systems is more important today than ever before.
Various flexible systems, referred to as “storage management servers,” have been developed for storing and managing data for remotely located clients. One particular system, available from International Business Machines, Inc. (IBM), is the Tivoli Storage Manager™ (TSM), previously named Adstar Distributed Storage Manager™ (ADSM). With TSM, a central server is coupled to multiple client platforms and one or more administrators. The server provides storage, backup, retrieval, and other management functions for the server's clients.
With TSM, backup-archive clients can back up and restore files and directories at the server. The TSM database tracks information about stored files such as their attributes and storage location, and also maintains information about clients, administrators, policies, and schedules. The backup-archive client can copy files, subdirectories, and directories to media controlled by the server. Backups can be controlled by administrator-defined policies and schedules, or users can request backups of their own data. The backup policy in the backup copy group indicates how many backup versions the server keeps of files and directories, and how long the server keeps backup versions of files and directories before expiring the previous versions of the backup. The most recent backup version of a file, corresponding to the file still stored on the client system, is referred to as the active version and is not eligible for expiration. Only inactive backup versions can be expired.
Prior art versions of TSM include a backup/archive client program for backing up files and a client program for backing-up database objects. Back-ups at the file level involve inserting a new version of the entire file including changes since the prior backup. File-level backup is based on an “incremental forever” methodology whereby once a file has been backed up, that file never needs to be backed up again unless it changes on the client machine. Database application clients that interface with database products may use TSM commands to perform incremental backups of the database object that include only the changed data since the last full backup, not the entire database object. This allows the database application client to only send that part of the database object that has changed in the incremental backup to the backup server instead of having to send the entire database object, which can be substantially large. The schedule of performing incremental backups is defined in the TSM server database.
“Backup sets” are copies of the most recently backed-up versions of a computer's files, put together into an aggregate data structure stored on a set of removable media, such as magnetic tape, optical disk, or the like. For example, using the incremental forever backups of TSM, a backup set would be the most recently backed-up version of a client computer's files as determined by the TSM database.
Backup sets fill a number of different storage management needs. For example, they are frequently used as long term archival copies of critical business data and off-site copies of backup data used for disaster recovery. In addition, backup sets are used as portable backup copies that can be restored directly on the local computer, without the need for a remote storage management server.
Despite the usefulness of backup sets, there are times when the most recently backed-up version of a computer's files are not what is needed by a user. There are times when yesterday's backup versions, last week's backup version, or even last month's backup version is needed instead of the most recently backed-up version of a computer's files. If the system administrator has the foresight to create a backup set at those specific times, then the need is already fulfilled, however it is not always possible to anticipate every need with regard to backing up computer files. Moreover, even if the need is anticipated, operational difficulties may sometimes delay the operation until it is too late to create a backup set with the desired content.
In addition to the above difficulties, “the most recently backed-up versions of a computer's files” may be a moving target. That is, if the computer's files are being backed-up at the same time as a backup set for that computer is being created, then there is a chance that the backup set will contain an inconsistent snapshot of the computer's files, i.e. it will contain versions of some of the computer's files that are active and versions of other ones of the computer file's that are inactive because the backup operation adds new versions of those files after the backup set is created. In other words, depending on when particular files are copied into the backup set, the backup set may contain some files that were backed-up on one day, and other files that were backed-up on another day.